<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-br" lang="pt-br">
<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Alternate PHP Syntax for View Files : Guia do Usuário CodeIgniter</title>

<style type='text/css' media='all'>@import url('../userguide.css');</style>
<link rel='stylesheet' type='text/css' media='all' href='../userguide.css' />

<script type="text/javascript" src="../nav/nav.js"></script>
<script type="text/javascript" src="../nav/prototype.lite.js"></script>
<script type="text/javascript" src="../nav/moo.fx.js"></script>
<script type="text/javascript" src="../nav/user_guide_menu.js"></script>

<meta http-equiv="expires" content="-1" />
<meta http-equiv="pragma" content="no-cache" />
<meta name="robots" content="all" />
<meta name="author" content="ExpressionEngine Dev Team" />
<meta name="description" content="Guia do Usuário do CodeIgniter" />

</head>
<body>

<!-- START NAVIGATION -->
<div id="nav"><div id="nav_inner"><script type="text/javascript">create_menu('../');</script></div></div>
<div id="nav2"><a name="top"></a><a href="javascript:void(0);" onclick="myHeight.toggle();"><img src="../images/nav_toggle_darker.jpg" width="154" height="43" border="0" title="Alternar Tabela de Conteúdos" alt="Alternar Tabela de Conteúdos" /></a></div>
<div id="masthead">
<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
<tr>
<td><h1>Guia de Usuário CodeIgniter Versão 2.0.0</h1></td>
<td id="breadcrumb_right"><a href="../toc.html">Tabela de Conteúdos</a></td>
</tr>
</table>
</div>
<!-- END NAVIGATION -->


<!-- START BREADCRUMB -->
<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
<tr>
<td id="breadcrumb">
<a href="http://codeigniter.com.br/">Página Inicial</a> › 
<a href="../index.html">Guia de Usuário CodeIgniter</a> › Sintaxe PHP Alternativa
</td>
<td id="searchbox"><form method="get" action="http://www.google.com.br/search"><input type="hidden" name="as_sitesearch" id="as_sitesearch" value="codeigniter.com.br/manual/" />Busca <input type="text" class="input" style="width:200px;" name="q" id="q" size="31" maxlength="255" value="" /> <input type="submit" class="submit" name="sa" value="Ok" /></form></td>
</tr>
</table>
<!-- END BREADCRUMB -->

<br clear="all" />


<!-- START CONTENT -->
<div id="content">

<h1>Sintaxe PHP Alternativa para visualizar arquivos</h1>

<p>Se você não utiliza o mecanismo de <a href="../libraries/parser.html">template engine</a> (sistema de template) do CodeIgniter, você estará usando PHP puro em seus arquivos de visualização. Para minimizar o código PHP nestes arquivos, e tornar mais fácil identificar os blocos de código, é recomendado que você use sintaxe alternativa do PHP para estruturas de controle e expressões echo curtas. Se você não estiver familiarizado com esta sintaxe, ela permite que você elimine as chaves no código, e também os comandos "echo".</p>

<h2>Suporte automático Short Tag</h2>

<p><strong>Nota:</strong> Se a sintaxe descrita nesta página não funciona em seu servidor, deve ser porque as "short tags" estão desabilitadas em seu arquivo PHP.ini. O CodeIgniter irá, opcionalmente, reescrever as short tags on-the-fly, permitindo que você use esta sintaxe mesmo que seu servidor não a suporte. Esta funcionalidade pode ser habilitada em seu arquivo <dfn>config/config.php</dfn>.</p>

<p class="important">Por favor, note que se você usar esse recurso, e se os erros do PHP são encontrados em seus <strong>arquivos view</strong>, a mensagem de erro e o número da linha não será mostrado com precisão. Em vez disso, todos os erros serão mostrados como erros <kbd>eval()</kbd>.</p>


<h2>Echos Alternativos</h2>

<p>Normalmente para dar echo ou print numa váriavel, você faria o seguinte:</p>

<code>&lt;?php echo $variable; ?></code>

<p>Com a sintaxe alternativa, pode fazê-lo desta maneira:</p>

<code>&lt;?=$variable?></code>



<h2>Estruturas de Controle Alternativo</h2>

<p>Estruturas de controle, como <var>if</var>, <var>for</var>, <var>foreach</var>, e <var>while</var> podem ser escritas em um formato simplificado. Aqui está um exemplo usando foreach:</p>

<code>
&lt;ul><br />
<br />
<var>&lt;?php foreach($todo as $item): ?></var><br />
<br />
&lt;li><var>&lt;?=$item?></var>&lt;/li><br />
<br />
<var>&lt;?php endforeach; ?></var><br />
<br />
&lt;/ul></code>

<p>Observe que não há chaves. Em vez disso, a chave do final é substituído por <var>endforeach</var>. Cada estrutura listada acima tem uma sintaxe de fechamento similar: <var>endif</var>, <var>endfor</var>, <var>endforeach</var> e <var>endwhile</var></p>

<p>Também observe que, ao invés de usar um ponto e vírgula após cada estrutura (exceto a última), há dois pontos. Isso é importante!</p>

<p>Aqui está outro exemplo, usando if/elseif/else. Observe os dois pontos:</p>


<code><var>&lt;?php if ($username == 'sally'): ?></var><br />
<br />
&nbsp;&nbsp;&nbsp;&lt;h3>Hi Sally&lt;/h3><br />
<br />
<var>&lt;?php elseif ($username == 'joe'): ?></var><br />
<br />
&nbsp;&nbsp;&nbsp;&lt;h3>Hi Joe&lt;/h3><br />
<br />
<var>&lt;?php else: ?></var><br />
<br />
&nbsp;&nbsp;&nbsp;&lt;h3>Hi unknown user&lt;/h3><br />
<br />
<var>&lt;?php endif; ?></var></code>



</div>
<!-- END CONTENT -->


<div id="footer">
<p>
Tópico Anterior:&nbsp;&nbsp;<a href="managing_apps.html">Gerenciando Aplicações</a>
&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
<a href="#top">Topo da Página</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
<a href="../index.html">Guia de Usuário CodeIgniter</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
Próximo Assunto:&nbsp;&nbsp;<a href="security.html">Segurança</a>
</p>
<p><a href="http://codeigniter.com.br">CodeIgniter</a> &nbsp;&middot;&nbsp; Copyright &#169; 2006 - 2011 &nbsp;&middot;&nbsp; <a href="http://ellislab.com/">EllisLab, Inc.</a></p>
</div>

</body>
</html>